package br.com.skpharma.dao;

import java.util.ArrayList;

import br.com.skpharma.db.DB;
import br.com.skpharma.vo.PrincipioAtivoVO;


public class DAOPrincipioAtivo {
	private DB db = new DB("jdbc:postgresql://localhost:5432/skpharma","postgres","postgres");
	private PrincipioAtivoVO principioativo;

	public DAOPrincipioAtivo(){
		principioativo = new PrincipioAtivoVO();
	}
	
	public void setLaboratorio(PrincipioAtivoVO nPrincipioAtivoVO){
		principioativo = nPrincipioAtivoVO;
	}

	public PrincipioAtivoVO getPrincipioAtivoVO(){
		return(principioativo);
	}

	public void salvar(){

		if(db.connect()){
		
			db.update("insert into principioativo (ds_principioativo) values ('"+ 
				 	principioativo.getDs()+ "')");
			db.disconnect();
		}		
	}

	public void excluir(){
		if(db.connect()){
			db.update("delete from principioativo where cd_principioativo = " + principioativo.getCod() );			
			db.disconnect();
		}		
	}
	
	public void editar(){		
		if(db.connect()){
			db.update("update principioativo set ds_principioativo='"+ principioativo.getDs() +
					"'where cd_principioativo= " + principioativo.getCod());			
			db.disconnect();
		}		
	}

	
	
	public ArrayList obterLista(){
		ArrayList lista = new ArrayList();
		PrincipioAtivoVO principioativoVO;
		DAOCidade daoCidade;
		if(db.connect()){
			db.select("select principioativo.* from principioativo order by ds_principioativo");			
			while(db.moveNext()){
				principioativoVO = new PrincipioAtivoVO( db.getInt("cd_principioativo"),  db.getString("ds_principioativo"));
				lista.add(principioativoVO);
			}
			db.disconnect();
		}		
		return lista;
	}	
	

	public void obter(int codigo){		
		if(db.connect()){
			db.select("select principioativo.* from principioativo where cd_principioativo =" + codigo);
			if(db.moveNext()){				
				principioativo.setCod(db.getInt("cd_principioativo"));
				principioativo.setDs(db.getString("ds_principioativo"));				
			}
			
			db.disconnect();
		}		
	}
	
	public void carregar(int codigo){		
		if(db.connect()){
			db.select("select cd_principioativo, ds_principioativo from principioativo where cd_principioativo=" + codigo);
			if(db.moveNext()){
				principioativo.setCod(db.getInt("cd_principioativo"));
				principioativo.setDs(db.getString("ds_principioativo"));
			}
			db.disconnect();
		}		
	}
}

